# -- coding: utf-8 --
from tools.Request_General import BaseAPI


class SQLServerDataTable(BaseAPI):
    """数据表SQL_SERVER组件"""

    def business_data(self, payload):
        """
        元素导出
        """
        r = self.request_send(params=payload)
        return r

    def element_info_copy(self, payload):
        """
        元素复制(单条复制)
        """
        r = self.request_send(json=payload)
        return r

    def element_info_import(self, payload):
        """
        元素导入(目前只支持单条导入)
        """
        r = self.request_send(json=payload)
        return r

    def actual_tablename(self, payload):
        """
        获取数据表实际表名
        """
        r = self.request_send(json=payload)
        return r

    def batch_actual_tablename(self, payload):
        """
        根据元素名称批量获取实际表名
        """
        r = self.request_send(json=payload)
        return r

    def batch_select(self, payload):
        """
        批量的自定义select查询接口
        """
        r = self.request_send(json=payload)
        return r

    def column_list(self, payload):
        """
        返回数据表字段列表信息
        """
        r = self.request_send(params=payload)
        return r

    def column_name(self, payload):
        """
        根据列名获取数据表的Column信息
        """
        r = self.request_send(json=payload)
        return r

    def custom_sql(self, payload):
        """
        自定义SQL执行(后端调用)--增删改查，支持多表联合查询
        """
        r = self.request_send(json=payload)
        return r

    def custom_sql_batch(self, payload):
        """
        自定义SQL执行(后端调用)--增删改查，支持多表联合查询多
        """
        r = self.request_send(json=payload)
        return r

    def data_diff(self, payload):
        """
        判断数据表与实际表是否一致
        """
        r = self.request_send(json=payload)
        return r

    def datatable_info_batch(self, payload):
        """
        批量获取数据表信息
        """
        r = self.request_send(json=payload)
        return r

    def delete_data(self, payload):
        """
        删除数据表中的数据
        """
        r = self.request_send(json=payload)
        return r

    def distinct_column_members(self, payload):
        """
        查询数据表列字段，去重后的数据集合
        """
        r = self.request_send(json=payload)
        return r

    def execute_sql(self, payload):
        """
        查询数据表数据
        """
        r = self.request_send(json=payload)
        return r

    def execute_batch_sql(self, payload):
        """
        批量sql操作
        """
        r = self.request_send(json=payload)
        return r

    def datatable_insert(self, payload):
        """
        向数据表中写入数据
        """
        r = self.request_send(json=payload)
        return r

    def physical_table_exist(self, payload):
        """
        数据表是否存在--根据元素信息校验物理表是否存在（返回实际表名）/判断物理表是否存在
        """
        r = self.request_send(json=payload)
        return r

    def table_ifexists(self, payload):
        """
        数据表是否存在--只判断元素是否存在（返回true/false）
        """
        r = self.request_send(json=payload)
        return r

    def table_ifexists_physical(self, payload):
        """
        数据表是否存在--只判断物理表是否存在（返回true/false）
        """
        r = self.request_send(json=payload)
        return r

    def table_info_field(self, payload):
        """
        获取数据表元素信息（从平台获取信息）
        """
        r = self.request_send(json=payload)
        return r

    def table_info_field_physical(self, payload):
        """
        获取数据表元素信息（从物理表获取信息）
        """
        r = self.request_send(json=payload)
        return r

    def update_data(self, payload):
        """
        更新数据表中的数据
        """
        r = self.request_send(json=payload)
        return r

    def customize_sql(self, payload):
        """
        使用视图-自定义sql查询
        """
        r = self.request_send(json=payload)
        return r

    def datatable_using_view_data(self, payload):
        """
        数据表使用视图获取数据
        """
        r = self.request_send(json=payload)
        return r

    def column_add(self, payload):
        """
        新增列字段信息（后端组件调用）
        """
        r = self.request_send(json=payload)
        return r

    def datatable_save(self, payload):
        """
        数据表新建&编辑（后端组件调用）
        """
        r = self.request_send(json=payload)
        return r

    def datatable_save_batch(self, payload):
        """
        数据表新建&编辑 批量接口（后端组件调用）
        """
        r = self.request_send(json=payload)
        return r

    def datatable_save_edit(self, payload):
        """
        数据表新建&编辑（前端调用）
        """
        r = self.request_send(json=payload)
        return r

    def generate_actual_table_name(self, payload):
        """
        根据tableName生成ActualTableName
        """
        r = self.request_send(json=payload)
        return r

    def only_check(self, payload):
        """
        数据表编辑--仅校验（后端组件调用）
        """
        r = self.request_send(json=payload)
        return r

    def only_save(self, payload):
        """
        数据表编辑--仅保存（后端组件调用，新建时实际表名的末尾加随机数）
        """
        r = self.request_send(json=payload)
        return r

    def only_save_edit(self, payload):
        """
        数据表编辑--仅保存（后端组件调用，带实际表名就不做任何处理）
        """
        r = self.request_send(json=payload)
        return r

    def delete(self, payload):
        """
        只删除物理表
        """
        r = self.request_send(json=payload)
        return r


if __name__ == '__main__':
    pass
